package com.boco.transnms.server.bo.ibo.workflow;

/**
 * <p>Title: TransNMS</p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2006</p>
 *
 * <p>Company: Boco Inter-Telecom INC</p>
 *
 * @author jia yuewen
 * @version 1.0
 */

import com.boco.transnms.common.dto.Smsinfo;
import com.boco.transnms.common.dto.base.BoActionContext;
import com.boco.common.util.except.UserException;
import com.boco.transnms.common.dto.base.DataObjectList;
import com.boco.transnms.common.dto.base.DboCollection;
import com.boco.transnms.common.dto.base.BoQueryContext;
import com.boco.transnms.common.dto.WorkflowLog;
import com.boco.transnms.common.dto.workflow.WfWorkList;

public interface IWorkflowLogBO {
    /**
     * getWorkflowLogByCuid
     * @param actionContext BoActionContext
     * @param cuid String
     * @return WorkflowLog
     * @throws UserException
     */
    WorkflowLog getWorkflowLogByCuid(BoActionContext actionContext,String cuid) throws UserException;
    /**
     * addWorkflowLog
     * @param actionContext BoActionContext
     * @param workflowLog WorkflowLog
     * @throws UserException
     */
    void addWorkflowLog(BoActionContext actionContext,WorkflowLog workflowLog) throws UserException;
    /**
     * deleteWorkflowLog
     * @param actionContext BoActionContext
     * @param workflowLog WorkflowLog
     * @throws UserException
     */
    void deleteWorkflowLog(BoActionContext actionContext,WorkflowLog workflowLog) throws UserException;
    /**
     * modifyWorkflowLog
     * @param actionContext BoActionContext
     * @param workflowLog WorkflowLog
     * @throws UserException
     */
    void modifyWorkflowLog(BoActionContext actionContext,WorkflowLog workflowLog) throws UserException;
    /**
     * deleteWorkflowLog
     * @param actionContext BoActionContext
     * @param list DataObjectList
     * @throws UserException
     */
    void deleteWorkflowLog(BoActionContext actionContext,DataObjectList list) throws UserException;
    /**
     * getWorkflowLogByCondition
     * @param actionContext BoQueryContext
     * @param operator String
     * @param starttime String
     * @param endtime String
     * @return DboCollection
     * @throws UserException
     */
    DboCollection getWorkflowLogByCondition(BoQueryContext actionContext, String operator,String starttime,String endtime) throws UserException;
    DboCollection getWorkflowLogByCondition(BoQueryContext actionContext, String processKey,String sheetId) throws UserException;
    DboCollection getWorkflowLogByCon(BoQueryContext actionContext, String sheetId, String orderStr, Integer processType) throws UserException;
}
